Android okhttp的启动流程及源码解析
目录前言什么是OKhttpOkHttp是如何做网络请求的1.它是如何使用的?1.1 通过构造者模式添加 url,method,header,body 等完成一个请求的信息 Request 对象1.2 同样通过构造者模式创建一个 OkHttpClicent 实例,可以按需配置1.3 创建 Call 并且发起网络请求2.如何通过 Call 发起请求?2.1 Call 是什么2.2 发起请求-异步请求...
2024-01-10Android使用OkHttp进行重定向拦截处理的方法
网上有很多的OkHttp的教程,但是并没有一个是关于如何OkHttp处理重定向的。这里的处理重定向的意思是:把重定向请求拦截下来,然后我们自己去请求重定向后的网页,然后通过Jsoup解析自己需要的网页数据。比如说我们模拟用户登录,然后自己去请求解析登陆后跳转的网页的内容。为什么要做这样的...
2024-01-10【安卓】Android Jetpack架构组件(四)之LiveData
一、 LiveData简介LiveData是Jetpack架构组件Lifecycle 库的一部分,是一个可感知生命周期的可观察容器类 (Observable)。与常规的可观察类不同,LiveData 具有生命周期感知能力,这意味着它具有感知应用组件(如 Activity、Fragment 或 Service)的生命周期的能力,并且LiveData仅更新处于活跃生命周期状态的应用组件观...
2024-01-10@Update如何在Android Room中工作?
我已经在一个房间里的数据库,我想相应检查它是否等于某些数据和更新行数据,如:@Update如何在Android Room中工作?if (dataInDatabase.equals(providedData)) { // update existing data. } 我已经是一个自动生成的ID和存在的唯一@PrimaryKey没有@ForeignKeys。我知道现有数据只能使用@PrimaryKey更新,但我检查的数据不是...
2024-01-10Android适配器(Adapter)的概念与自定义
目录一、什么是适配器二、Adapter基本概念和继承关系三、自定义适配器实例1.文件结构2.xml内容3.java内容四、参考资料总结一、什么是适配器在常见软件中,往往能看到列表一样的信息流,例如:如果在xml中将信息写死,那显然是不合适的,无法做到上拉刷新的效果。这个时候,就需要用到适配器...
2024-01-10轻轻松松带你入门Android Jetpack(含Jetpack Compose),容易肝不难!
JetPack 不是一个库。更多的是Google的一个态度。Android Jetpack是什么Jetpack 是 Google 为解决 Android 开发碎片化,打造成熟健康生态圈提出的战略规划,是 Google 对 Android 未来提出的发展方向,同时它也是众多优秀 Android 组件的集合。Jetpack的优势:Jetpack 拥有基于生命周期感知的能力,可以减少NPE崩溃、内存...
2024-01-10在Android的OKhttp中通过POST请求发送JSON正文
我已经设置好OkHttpClient并成功将GET请求发送到服务器。而且,我还可以将带有空body标签的POST请求发送到服务器。现在,我正在尝试将以下JSON对象发送到服务器。{"title": "Mr.","first_name":"Nifras","last_name": "","email": "nfil@gmail.com","contact_number": "75832366","billing_address": "","connected_via":"Application"}为此,我...
2024-01-10IntelliJ IDEAx导出安卓(Android)apk文件图文教程
做完一个Android项目之后,如何才能把项目发布到Internet上供别人使用呢?我们需要将自己的程序打包成Android安装包文件–APK(AndroidPackage),其后缀名为".apk"。将APK文件直接上传到Android模拟器或Android手机中执行即可进行安装。Android系统要求具有其开发者签名的私人密钥的应用程序才能够被安装。生成...
2024-01-10Android token过期刷新处理的方法示例
tokentoken的意思是“令牌”,是用户身份的验证方式,最简单的token组成:uid(用户唯一的身份标识)、time(当前时间的时间戳)、sign(签名,由token的前几位+盐以哈希算法压缩成一定长的十六进制字符串,可以防止恶意第三方拼接token请求服务器)。还可以把不变的参数也放进token,避免多次查库。第一种方...
2024-01-10【安卓】编写好的android apk安装时出现感染病毒提示
从浏览器下载安装我编写好的apk时,华为、VIVO手机都会出现类似的提示:有大神告诉我只是为什么吗?代码量很少。该删的也都删了。不知道什么原因。急。谢谢!在virustotal上检测出来是这个原因。有什么解决方案吗?回答解决了 。 是签名的问题。楼主,您这个打包好的apk病毒怎么解决的呢,你说是...
2024-01-10有可能在flutter中构建android小部件吗?
Flutter大量使用小部件一词的事实使得很难找到有关此主题的文档。在Android上(我认为这在iOS上是不可能的),我们可以在主仪表板上添加小部件,从而使我们无需打开有问题的应用程序即可查看与应用程序相关的信息或触发一键式操作。是否可以在Dart&Flutter中构建这样的“部件”?还是应该在Java中...
2024-01-10【安卓】如何在安卓端运行nodejs的sqlite3模块
问题描述想在安卓端运行nodejs写的web服务器。目前遇到的问题是sqlite3模块的安装问题。 请问大佬们如何运行起来? sqlite3官方给的一个解决方法是将sqlite3作为nodejs的一个核心插件,与nodejs一起交叉编译。但……恕咱弱鸡不知如何操作。问题出现的平台版本及自己尝试过哪些方法有尝试过sqlite3和bette...
2024-01-10Android基于开源项目xutils3实现下载
上一次自己写了一个多线程断点续传下载的demo,过于麻烦,bug超多,所以我学习使用xutils来完成此功能。先将xutils依赖搭建好(上一篇博客已经具体写了方法)先看看效果图:下面开始代码的逻辑:在xutils3以前使用HttpUtils新建对象即可使用,3以后取消了HttpUtils,具体方法请看代码。首先创建布局...
2024-01-10Android开发实现查询远程服务器的工具类QueryUtils完整实例
本文实例讲述了Android开发实现查询远程服务器的工具类QueryUtils。分享给大家供大家参考,具体如下:/** * 查询远程服务器的工具 * @author chen.lin * */public class QueryUtils { private static final String TAG = "CommonUtils"; private static QueryUtils instance; private SharedPreferences sp; private QueryUt...
2024-01-10Android Firebase下载声音
我在Android应用程序上工作,我需要从firebase存储中下载一些声音,我从firebase实时数据库中获取声音名称。Android Firebase下载声音我的代码:public class DataSyncFb extends AsyncTask<Void, Integer, Void> { private Context context; private StorageReference mStorageRef; public DataSyncFb(final Context context) ...
2024-01-10android通过servlet服务器保存文件到手机
本文实例为大家分享了android通过servlet服务器保存文件到手机的具体代码,供大家参考,具体内容如下服务器端:(手机和电脑连接的同一个WIFI)package com; import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.io.PrintWriter; import javax.servlet.ServletException;import javax.ser...
2024-01-10Android Native库的加载及动态链接的过程
Native库的装载过程我们从一个简单的NDK Demo开始分析。public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Example of a call to a n...
2024-01-10node.js-sqlite3读取表中的所有记录并返回
我正在尝试读取sqlite3表中的所有记录,并通过回调返回它们。但是似乎尽管使用了序列化,但这些调用仍然是ASYNC。这是我的代码:var readRecordsFromMediaTable = function(callback){ var db = new sqlite3.Database(file, sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE); var allRecords = []; db.serialize(function() {...
2024-01-10android TextView 设置和取消删除线的两种方法
一、TextView 设置删除线有两种方式:(推荐)方式一:通过按位或运算符|,将 TextView 原本的 Flags 属性和删除线一块设置。setPaintFlags内会对 TextView 进行重绘。tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);方式二:获取画笔后设置属性,重绘 TextView 。此方式有个问题,会把 TextView 原本的 Flags ...
2024-01-10UsbRequest.queue导致Android 3.1应用程序崩溃
我正在开发一个Android 3.1应用程序,该应用程序使用USB主机模式通过USB上的MIDI与我的键盘(KorgM3)进行通信。这是在装有Android4.0.3的Xoom上运行的。我可以通过USB接收MIDI消息而没有任何问题,但是将音符数据发送回键盘的效果是好坏参半,延迟半秒钟后便会频繁崩溃。这是我在点击操作栏上的按钮发...
2024-01-10浅谈Android设计模式学习之观察者模式
观察者模式在实际项目中使用的也是非常频繁的,它最常用的地方是GUI系统、订阅——发布系统等。因为这个模式的一个重要作用就是解耦,使得它们之间的依赖性更小,甚至做到毫无依赖。以GUI系统来说,应用的UI具有易变性,尤其是前期随着业务的改变或者产品的需求修改,应用界面也经常性变化...
2024-01-10Android Gson基本用法学习
目录1. 导入Android Studio工程2. 简单的 Java Object 序列化/反序列化序列化反序列化3. 嵌套 Java Object 的序列化/反序列化4. Array 和 List 的序列化/反序列化序列化反序列化1 Array的反序列化2 List的反序列化5. Map 和 Set 的序列化/反序列化6. 变量值为null时的序列化/反序列化7. 控制序列化/反序列化 的变量名称8. 序...
2024-01-10Android学习之Flux架构入门
Flux 架构介绍Flux 架构 被Facebook使用来构建他们的客户端web应用。跟Clean Architecture一样,它不是为移动应用设计的,但是它的特性和简单可以让我们很好的在安卓项目中采用。Flux模式最大的特点是单向的数据流,它的UI状态更新模式继承了MVC模式的设计思想。Flux并不是具体的框架,而是一套处理UI问...
2024-01-10Android学习教程之2D绘图基础及绘制太极图
前言Android是通过graphics类来显示2D图形的。其中graphics中包括了Canvas、Paint、Color、Bitmap等类。graphics具有绘制点、线、颜色、2D几何图形、图像处理等功能。其中Color和Bitmap是很常用的类,本文主要要讲的是Canvas和Paint。顾名思义就是画布和画笔。Canvas类Canvas即画布,我们需要做的就是使用之前设置好...
2024-01-10Android学习之动画基础
一:逐帧动画1、效果展示逐帧动画是以图片为基础的,通过AniamtionDrawable来实现的,如上图所示。2、实现步骤1)、通过animation-lis建立帧动画xml文件<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android"><itemandroid:drawable="@drawable/frame_1"android:durat...
2024-01-10Android中的动态加载机制的学习研究
在目前的软硬件环境下,Native App与Web App在用户体验上有着明显的优势,但在实际项目中有些会因为业务的频繁变更而频繁的升级客户端,造成较差的用户体验,而这也恰恰是Web App的优势。本文对网上Android动态加载jar的资料进行梳理和实践在这里与大家一起分享,试图改善频繁升级这一弊病。Android...
2024-01-10深入学习Android中的Intent
Intent提供了一种通用的消息系统,它允许在你的应用程序见传递Intent来执行动作和产生事件,使用Intent可以激活Android应用的三种类型的核心组件:活动Activity、服务Service、广播接受者Broadcast。Intent又分为隐士意图和显示意图。显示意图:调用intent.setComponent()、intent.setClassName()或者intent.setClass()方法明...
2024-01-10Android 事件触发机制的深入学习
Android 事件触发机制的深入学习最近在研究android的事件触发和传播机制,说来很惭愧,web下的事件太熟悉不过了,可在android中却很郁闷,常用的触摸事件都糊里糊涂的,在网上看了半天,也整理一份,供大家参考:public class CustomDefaultActivity implements OnTouchListener { private GestureDetector gd1; private Tabl...
2024-01-10android左连接与房间查询
我正在尝试更改我的sqlite数据库与房间库。我有点困惑与左连接查询。android左连接与房间查询我已经用sqlite实现了它,但不知道如何才能达到同样的房间?这里是我创建表:第一个表:通知db.execSQL("CREATE TABLE IF NOT EXISTS $TABLE_NAME ($COLUMN_ID INTEGER PRIMARY KEY, $ICON TEXT, $TITLE INTEGER," + " $DATE INTEGER, $TYPE...
2024-01-10Android开发学习实现简单计算器
这里是用线性布局实现的计算器,为防止以后再回顾知识代码找不到,特将代码贴在这里:xml文件的布局代码:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/to...
2024-01-10